package cn.foolishbird.crow.resource.permission;

import cn.foolishbird.crow.core.middle.MGObject;

import java.util.List;

/**
 * 角色对象
 *
 * @author foolish bird
 * @email luohongtu@foolishbird.cn
 */
public interface Role extends MGObject {

    /**
     * 角色编号
     */
    String roleNo();

    /**
     * 角色名
     */
    String role();

    /**
     * 角色别名
     */
    String roleAlias();

    /**
     * 是否是超级管理员
     *
     * @return 是否是超级管理员
     */
    boolean superManager();

    /**
     * 权限
     *
     * @return 权限
     */
    List<? extends Permission> permissions();

}
